home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 December
/
MACPOWER-1997-12.ISO.7z
/
MACPOWER-1997-12.ISO
/
AMUG
/
PROGRAMMING
/
Raven 1.2 Examples.sit
/
Raven 1.2 Examples
/
Quill
/
Source
/
GroupBoxEditor.cpp
< prev
next >
Wrap
Text File
|
1997-08-10
|
4KB
|
139 lines
/*
* File: GroupBoxEditor.cpp
* Summary: A view that knows how to edit a TGroupBox.
* Written by: Jesse Jones
*
* Copyright ゥ 1996 Jesse Jones.
* For conditions of distribution and use, see copyright notice in ZTypes.h
*
* Change History (most recent first):
*
* <-> 12/01/96 JDJ Created
*/
#include "GroupBoxEditor.h"
#include <ZColorSwatch.h>
#include <ZTextBox.h>
#include "RsrcPopupMenu.h"
// ===================================================================================
// class CEditGroupBoxCommand
// ===================================================================================
//---------------------------------------------------------------
//
// CEditGroupBoxCommand::~CEditGroupBoxCommand
//
//---------------------------------------------------------------
CEditGroupBoxCommand::~CEditGroupBoxCommand()
{
}
//---------------------------------------------------------------
//
// CEditGroupBoxCommand::CEditGroupBoxCommand
//
//---------------------------------------------------------------
CEditGroupBoxCommand::CEditGroupBoxCommand(TGroupBox* pane, const SGroupBoxInfo& oldInfo, const SGroupBoxInfo& newInfo) : Inherited(pane, oldInfo, newInfo)
{
}
//---------------------------------------------------------------
//
// CEditGroupBoxCommand::UpdatePane
//
//---------------------------------------------------------------
void CEditGroupBoxCommand::UpdatePane(const SGroupBoxInfo& info)
{
mPane->SetText(info.text);
mPane->SetTextTraits(info.traitsID);
mPane->SetSecondary(info.secondary);
}
#pragma mark -
// ===================================================================================
// CGroupBoxEditor
// ===================================================================================
static TReanimatorRegister<CGroupBoxEditor> sGroupBoxEditorRegistrar;
//---------------------------------------------------------------
//
// CGroupBoxEditor::~CGroupBoxEditor
//
//---------------------------------------------------------------
CGroupBoxEditor::~CGroupBoxEditor()
{
}
//---------------------------------------------------------------
//
// CGroupBoxEditor::CGroupBoxEditor
//
//---------------------------------------------------------------
CGroupBoxEditor::CGroupBoxEditor(TView* superView) : Inherited(superView)
{
}
//---------------------------------------------------------------
//
// CGroupBoxEditor::Create [static]
//
//---------------------------------------------------------------
MReanimatable* CGroupBoxEditor::Create(MReanimatable* parent)
{
return new CGroupBoxEditor(dynamic_cast<TView*>(parent));
}
//---------------------------------------------------------------
//
// CGroupBoxEditor::GetEditorInfo
//
//---------------------------------------------------------------
SGroupBoxInfo CGroupBoxEditor::GetEditorInfo() const
{
SGroupBoxInfo info;
TTextBox* textBox = dynamic_cast<TTextBox*>(this->FindSubPane("Text"));
info.text = textBox->GetText();
CRsrcPopupMenu* popup = dynamic_cast<CRsrcPopupMenu*>(this->FindSubPane("Traits ID"));
info.traitsID = popup->GetID();
TControl* control = dynamic_cast<TControl*>(this->FindSubPane("Secondary"));
info.secondary = control->GetValue();
return info;
}
//---------------------------------------------------------------
//
// CGroupBoxEditor::SetEditorInfo
//
//---------------------------------------------------------------
void CGroupBoxEditor::SetEditorInfo(const SGroupBoxInfo& info)
{
TTextBox* textBox = dynamic_cast<TTextBox*>(this->FindSubPane("Text"));
textBox->SetText(info.text);
CRsrcPopupMenu* popup = dynamic_cast<CRsrcPopupMenu*>(this->FindSubPane("Traits ID"));
popup->SetID(info.traitsID);
TControl* control = dynamic_cast<TControl*>(this->FindSubPane("Secondary"));
control->SetValue(info.secondary);
}